﻿using System.Windows.Input;
using RG.Common.WPF.Commands;
using Microsoft.Practices.Unity;
using RG.Common;

namespace RG.Common.WPF.Wizard
{
    [SupportDataBinding]
    public class WizardWindowVM: WizardVM, IWorkplaceObject
    {
        public ICommand CancelCmd { get; private set; }

        
        [InjectionConstructor]
        protected WizardWindowVM(IUnityContainer cfg) : base(cfg)
        {
            Caption = "Чегой-то мастер однако";
            CancelCmd = new DelegateCommand(OnCancel);
        }

        public bool AskCancel()
        {
            return Worker.Workplace.AskYesNo(
                "Вы уверены, что хотите прекратить работу мастера?\nВсе введенные данные будут потеряны");
        }
        private void OnCancel()
        {
            Worker.Workplace.CloseDialog(false);
        }

        public string Caption { get; set; }
        public bool CanClose
        {
            get { return AskCancel(); }
        }
    }
}
